/**
 * 中华非遗数据文件
 * 包含所有非遗项目的静态数据
 * 
 * @author 中华非遗团队
 * @version 1.0.0
 * @date 2024
 */

// 主页卡片布局数据（认识非遗页面上半部分）
const heritageMainData = [
    {
        id: 'physics_science',
        categoryName: '物质科学',
        categoryClass: 'physics-science',
        description: '运用物理化学原理的传统艺术形式',
        items: [
            {
                id: 'shadow_play',
                title: '皮影',
                description: '运用光学原理的传统戏剧艺术形式',
                image: '图片/皮影.jpg',
                tags: ['光影', '戏剧'],
                keywords: '皮影 皮影戏 传统戏剧 光影艺术',
                clickAction: null // 可以设置点击跳转链接
            },
            {
                id: 'paper_cutting',
                title: '剪纸',
                description: '体现材料学与几何学的民间艺术',
                image: '图片/剪纸.jpg',
                tags: ['民间艺术', '几何美学'],
                keywords: '剪纸 民间艺术 纸艺 装饰艺术',
                clickAction: null
            }
        ]
    },
    {
        id: 'life_science',
        categoryName: '生命科学',
        categoryClass: 'life-science',
        description: '融合生物学原理的传统制作工艺',
        items: [
            {
                id: 'yingde_tea',
                title: '英德红茶制作技艺',
                description: '融合生物发酵学的传统制茶工艺',
                image: '图片/英德红茶.jpg',
                tags: ['发酵工艺', '广东特产'],
                keywords: '英德红茶 茶叶制作 发酵工艺 生物技术',
                clickAction: null
            },
            {
                id: 'baisha_brush',
                title: '白沙茅龙笔制作技艺',
                description: '运用生物材料科学的传统笔具制作',
                image: '图片/白沙毛龙笔.jpg',
                tags: ['传统工艺', '文房四宝'],
                keywords: '白沙茅龙笔 毛笔制作 传统工艺 动物材料',
                clickAction: null
            }
        ]
    },
    {
        id: 'earth_science',
        categoryName: '地球与宇宙科学',
        categoryClass: 'earth-science',
        description: '运用地质学原理的传统雕塑艺术',
        items: [
            {
                id: 'dawu_clay',
                title: '大吴泥塑',
                description: '运用地质学原理的传统泥塑艺术',
                image: '图片/大吴泥塑.jpg',
                tags: ['泥塑', '民间艺术'],
                keywords: '大吴泥塑 陶土艺术 雕塑 民间艺术',
                clickAction: null
            },
            {
                id: 'leizhou_dog',
                title: '雷州石狗',
                description: '体现地质学与文化学的石雕艺术',
                image: '图片/雷州石狗.png',
                tags: ['石雕', '雷州文化'],
                keywords: '雷州石狗 石雕 传统雕刻 地方文化',
                clickAction: null
            }
        ]
    },
    {
        id: 'engineering_tech',
        categoryName: '工程与技术',
        categoryClass: 'engineering-tech',
        description: '融合工程学原理的传统技术工艺',
        items: [
            {
                id: 'dragon_boat',
                title: '龙舟',
                description: '融合流体力学的传统造船技术',
                image: '图片/龙舟.jpg',
                tags: ['造船工艺', '体育文化'],
                keywords: '龙舟 造船工艺 水上运动 传统技术',
                clickAction: 'longzhou.html'
            },
            {
                id: 'ivory_carving',
                title: '象牙雕',
                description: '体现精密加工技术的传统雕刻艺术',
                image: '图片/象牙雕.png',
                tags: ['精密雕刻', '传统工艺'],
                keywords: '象牙雕 雕刻艺术 精密加工 传统工艺',
                clickAction: null
            }
        ]
    }
];

// 更多内容数据（显示更多按钮展开的内容）
const heritageExtendedData = [
    {
        id: 'physics_science_extended',
        categoryName: '物质科学',
        categoryIcon: 'fas fa-atom',
        categoryClass: 'physics-color',
        description: '运用物理化学原理的传统艺术形式',
        itemCount: 2,
        items: [
            {
                id: 'shadow_play_detailed',
                title: '皮影',
                description: '利用光学原理的传统戏剧艺术，通过灯光投射产生神奇的光影效果',
                image: '图片/皮影.jpg',
                metaTags: ['光影艺术', '传统戏剧'],
                metaDate: '起源：汉代',
                region: '全国各地',
                level: '国家级',
                clickAction: null
            },
            {
                id: 'paper_cutting_detailed',
                title: '剪纸',
                description: '体现几何学与材料学的民间艺术，展现精确的对称美和图案设计',
                image: '图片/剪纸.jpg',
                metaTags: ['几何美学', '民间艺术'],
                metaDate: '起源：南北朝',
                region: '全国各地',
                level: '国家级',
                clickAction: null
            }
        ]
    },
    {
        id: 'life_science_extended',
        categoryName: '生命科学',
        categoryIcon: 'fas fa-leaf',
        categoryClass: 'life-color',
        description: '融合生物学原理的传统制作工艺',
        itemCount: 2,
        items: [
            {
                id: 'yingde_tea_detailed',
                title: '英德红茶制作技艺',
                description: '运用生物发酵学原理的传统制茶工艺，体现微生物与茶叶的完美结合',
                image: '图片/英德红茶.jpg',
                metaTags: ['发酵工艺', '广东特产'],
                metaDate: '产地：英德',
                region: '广东英德',
                level: '省级',
                clickAction: null
            },
            {
                id: 'baisha_brush_detailed',
                title: '白沙茅龙笔制作技艺',
                description: '运用生物材料科学的传统笔具制作，精选动物毛料制成优质毛笔',
                image: '图片/白沙毛龙笔.jpg',
                metaTags: ['传统工艺', '文房四宝'],
                metaDate: '产地：白沙',
                region: '海南白沙',
                level: '市级',
                clickAction: null
            }
        ]
    },
    {
        id: 'earth_science_extended',
        categoryName: '地球与宇宙科学',
        categoryIcon: 'fas fa-globe-asia',
        categoryClass: 'earth-color',
        description: '运用地质学原理的传统雕塑艺术',
        itemCount: 2,
        items: [
            {
                id: 'dawu_clay_detailed',
                title: '大吴泥塑',
                description: '运用地质学原理的传统泥塑艺术，利用天然陶土的可塑性创造艺术品',
                image: '图片/大吴泥塑.jpg',
                metaTags: ['泥塑艺术', '民间工艺'],
                metaDate: '产地：大吴',
                region: '江苏大吴',
                level: '省级',
                clickAction: null
            },
            {
                id: 'leizhou_dog_detailed',
                title: '雷州石狗',
                description: '体现地质学与文化学的石雕艺术，利用当地石材特性创作文化符号',
                image: '图片/雷州石狗.png',
                metaTags: ['石雕工艺', '雷州文化'],
                metaDate: '产地：雷州',
                region: '广东雷州',
                level: '国家级',
                clickAction: null
            }
        ]
    },
    {
        id: 'engineering_tech_extended',
        categoryName: '工程与技术',
        categoryIcon: 'fas fa-cogs',
        categoryClass: 'tech-color',
        description: '融合工程学原理的传统技术工艺',
        itemCount: 2,
        items: [
            {
                id: 'dragon_boat_detailed',
                title: '龙舟',
                description: '融合流体力学的传统造船技术，体现古人对水动力学的深刻理解',
                image: '图片/龙舟.jpg',
                metaTags: ['造船工艺', '体育文化'],
                metaDate: '起源：战国',
                region: '全国各地',
                level: '国家级',
                clickAction: 'longzhou.html'
            },
            {
                id: 'ivory_carving_detailed',
                title: '象牙雕',
                description: '体现精密加工技术的传统雕刻艺术，展现极致的工艺水准和技术传承',
                image: '图片/象牙雕.png',
                metaTags: ['精密雕刻', '传统工艺'],
                metaDate: '历史：古代',
                region: '广东地区',
                level: '国家级',
                clickAction: null
            }
        ]
    }
];

// 搜索建议数据
const searchSuggestions = [
    { category: '物质科学', type: 'category' },
    { category: '生命科学', type: 'category' },
    { category: '地球与宇宙科学', type: 'category' },
    { category: '工程与技术', type: 'category' },
    { category: '皮影', type: 'item' },
    { category: '龙舟', type: 'item' }
];

/**
 * 数据访问接口
 * 提供统一的数据访问方法
 */
const HeritageDataAPI = {
    /**
     * 获取主页卡片数据
     * @returns {Array} 主页卡片数据数组
     */
    getMainData() {
        return heritageMainData;
    },

    /**
     * 获取扩展内容数据
     * @returns {Array} 扩展内容数据数组
     */
    getExtendedData() {
        return heritageExtendedData;
    },

    /**
     * 获取搜索建议数据
     * @returns {Array} 搜索建议数据数组
     */
    getSearchSuggestions() {
        return searchSuggestions;
    },

    /**
     * 根据ID查找主页数据项
     * @param {string} itemId - 项目ID
     * @returns {Object|null} 找到的数据项或null
     */
    findMainItem(itemId) {
        for (const category of heritageMainData) {
            const item = category.items.find(item => item.id === itemId);
            if (item) {
                return { category, item };
            }
        }
        return null;
    },

    /**
     * 根据ID查找扩展数据项
     * @param {string} itemId - 项目ID
     * @returns {Object|null} 找到的数据项或null
     */
    findExtendedItem(itemId) {
        for (const category of heritageExtendedData) {
            const item = category.items.find(item => item.id === itemId);
            if (item) {
                return { category, item };
            }
        }
        return null;
    },

    /**
     * 搜索功能
     * @param {string} query - 搜索关键词
     * @returns {Object} 搜索结果
     */
    search(query) {
        const results = {
            main: [],
            extended: []
        };

        const lowerQuery = query.toLowerCase();

        // 搜索主页数据
        heritageMainData.forEach(category => {
            category.items.forEach(item => {
                if (
                    item.keywords.toLowerCase().includes(lowerQuery) ||
                    item.title.toLowerCase().includes(lowerQuery) ||
                    item.description.toLowerCase().includes(lowerQuery)
                ) {
                    results.main.push({ category, item });
                }
            });
        });

        // 搜索扩展数据
        heritageExtendedData.forEach(category => {
            category.items.forEach(item => {
                if (
                    item.title.toLowerCase().includes(lowerQuery) ||
                    item.description.toLowerCase().includes(lowerQuery) ||
                    item.metaTags.some(tag => tag.toLowerCase().includes(lowerQuery))
                ) {
                    results.extended.push({ category, item });
                }
            });
        });

        return results;
    },

    /**
     * 添加新的主页数据项
     * @param {string} categoryId - 分类ID
     * @param {Object} itemData - 新项目数据
     * @returns {boolean} 是否添加成功
     */
    addMainItem(categoryId, itemData) {
        const category = heritageMainData.find(cat => cat.id === categoryId);
        if (category) {
            category.items.push(itemData);
            return true;
        }
        return false;
    },

    /**
     * 添加新的扩展数据项
     * @param {string} categoryId - 分类ID
     * @param {Object} itemData - 新项目数据
     * @returns {boolean} 是否添加成功
     */
    addExtendedItem(categoryId, itemData) {
        const category = heritageExtendedData.find(cat => cat.id === categoryId);
        if (category) {
            category.items.push(itemData);
            category.itemCount = category.items.length;
            return true;
        }
        return false;
    }
};

// 导出数据和API（兼容不同的模块系统）
if (typeof module !== 'undefined' && module.exports) {
    // Node.js 环境
    module.exports = {
        heritageMainData,
        heritageExtendedData,
        searchSuggestions,
        HeritageDataAPI
    };
} else {
    // 浏览器环境
    window.heritageMainData = heritageMainData;
    window.heritageExtendedData = heritageExtendedData;
    window.searchSuggestions = searchSuggestions;
    window.HeritageDataAPI = HeritageDataAPI;
} 